import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import Icons from 'unplugin-icons/vite';
import IconsResolver from 'unplugin-icons/resolver';
import path from 'path';
export default defineConfig({
    plugins: [
        vue(),
        AutoImport({
            resolvers: [
                ElementPlusResolver(),
                IconsResolver({
                    // prefix: 'icon'
                }),
            ],
        }),
        Components({
            resolvers: [
                ElementPlusResolver(),
                IconsResolver({
                    // 设置图标前缀 prefix默认值为 i
                    // prefix: 'icon',
                    // 指定注册图标集
                    // enabledCollections: ['ep'],
                }),
            ],
        }),
        Icons({ autoInstall: true }),
    ],
    resolve: {
        // 设置l路径别名
        alias: {
            '@': path.resolve(__dirname, 'src'),
            '@assets': path.resolve(__dirname, 'src/assets'),
            '@pages': path.resolve(__dirname, 'src/pages'),
            '@components': path.resolve(__dirname, 'src/components'),
            '@router': path.resolve(__dirname, 'src/router'),
        },
    },
    css: {
        // css预处理器
        preprocessorOptions: {
            scss: {
                // 引入 mixin.scss 这样就可以在全局中使用 mixin.scss中预定义的变量了
                // 给导入的路径最后加上 ;
                additionalData: '@import "@/assets/styles/variable.scss";',
            },
        },
    },
    server: {
        // 设置服务启动端口号
        port: 3300,
        host: '0.0.0.0',
        // 启动项目后自动打开浏览器
        open: true,
        // 允许跨域
        cors: true,
        // 打开热更新
        hmr: true,
        proxy: {
            '/api': {
                // target: 'https://159.75.73.211:4333', // 后台接口域名
                target: 'https://192.168.2.120:4333/', // 后台接口域名
                ws: true, //如果要代理 websockets，配置这个参数
                secure: false, // 如果是https接口，需要配置这个参数
                changeOrigin: true, //是否跨域
                // 请求路径重写
                // rewrite: path => path.replace(/^\/api/, ''),
            },
        },
    },
});
